今天來學習如何讀取網路上以及下載到電腦的csv檔。
CSV是一種常見的純文本檔案格式,用於儲存結構化的表格數據。CSV檔案使用逗號(,)來區分不同的數據列,每一行表示一個數據記錄。例如關聯式資料庫表格形式文字儲存或Excel二維式資料等等。
網際網路讀取
網址:https://data.moi.gov.tw/MoiOD/System/DownloadFile.aspx?DATA=CA18EE06-4A50-4861-9D97-7853353D7108
import requests
import csv
from io import StringIO
# 讀取的CSV檔案的URL
csv_url = "https://data.moi.gov.tw/MoiOD/System/DownloadFile.aspx?DATA=CA18EE06-4A50-4861-9D97-7853353D7108"
try:
# 使用requests庫獲取CSV數據
response = requests.get(csv_url)
# 檢查響應的狀態碼
if response.status_code == 200: #HTTP狀態碼200表示請求成功
csv_data = StringIO(response.text) #將response.text的內容轉換為可讀取的CSV數據
csv_reader = csv.reader(csv_data)
for row in csv_reader:
print(row)
else:
print("無法獲取CSV數據的狀態碼:", response.status_code)
except requests.exceptions.RequestException as e:
print("發生錯誤:", e)
檔案讀取
import csv
# 輸入要讀取的CSV檔案的
csv_file_path = "data.csv"
try:
# newline=''參數用於確保在讀取CSV檔案時換行符號的處理方式正確
with open(csv_file_path, newline='') as csvfile:
# 使用csv.reader來讀取CSV檔案
csv_reader = csv.reader(csvfile)
for row in csv_reader:
print(row)
except FileNotFoundError:
print(f"未找到檔案: {csv_file_path}")
except Exception as e:
print(f"發生錯誤: {e}"
今天學完讀取csv檔案的方式,明天再來學習如何讀取其他格式檔案吧!
---20230926---